In the 3G radio communication standards, the generic authentication architecture is a general architecture used by many application services to accomplish authentication of user. The generic authentication architecture can be used to verify user in the application service. The above application services can be multicast/broadcast service, user certificate service, instant information service, or proxy service.
FIG. 1 is the schematic diagram illustrating the construction of the generic authentication architecture. The generic authentication architecture generally includes an User Equipment (UE) 101, a BSF (Bootstrapping Server Function) 102 that performs initial check and verification of the user, a Home Subscriber Server (HSS) 103 and a Network Application Function (NAF) 104. The BSF 102 serves for mutual authentication with the UE 101, and generates a shared key shared by the BSF 102 and the UE 101. The HSS 103 stores an user Profile in it. The Profile includes all descriptive information associated with the user including an user identity. The HSS 103 also functions to generate authentication vector information simultaneously.
When a user needs a certain service, he will go to the BSF 102 directly for mutual authentication if he knows the service demands mutual authentication process at the BSF 102, otherwise, the user will first contact the NAF 104 associated with the service. If the NAF 104 uses the generic authentication architecture, and finds that the user sending the request has not gone to the BSF 102 for mutual authentication, it notifies the user to go to the BSF 102 for mutual authentication.
The mutual authentication process between the user and the BSF 102 is: after the BSF 102 receives the authentication request from the user, it goes to the HSS 103 to get the user's authentication information, according to which the BSF 102 performs the mutual authentication with the user by an Authentication and Key Agreement (AKA). After successful authentication, the user and the BSF 102 authenticate with each other and generate a shared key Ks between them. Thereafter, the BSF 102 assigns to the user a Bootstrapping-Transaction Identifier (B-TID) which is associated with Ks.
After receiving the B-TID, the user sends an access request with the B-TID in it again to the NAF 104. After receiving the request, the NAF 104 verifies that the user is legal and has obtained the Ks or Ks-derived key. The user uses the B-TID to carry out normal communication with NAF under the protection of the Ks or Ks-derived key.
Multicast/Broadcast Multimedia Services (MBMS) are taken as examples in the following text for a specific presentation of the generic authentication architecture's applications. In radio communication field, the multicast service is a point-to-multipoint unidirectional bearer service. Data are transferred from a source to multiple destinations. The users can receive the multicast service by subscribing the multicast service in a certain region. It should be prevented in multicast services that the users who have not subscribed or paid for a multicast service use the service. Therefore, in multicast service groups, a Multicast Service Key (MSK) is provided for a specific service. The MSK is only known by the users of the group and the server that provides the multicast service. The users outside of the group are not authorized to know the key. The shared MSK do not encrypt the MBMS data directly, instead, it functions to perform access control, generates a Multicast Traffic Key (MTK) and encrypts the MTK. The multicast application server uses the MTK to encrypt the service data information. The users in the group use the same shared MTK to decrypt their received service data information to obtain the contents of the service data information. The users outside of the group cannot get the multicast information contents without the shared key.
When using the MBMS, the user needs to pass the authentication of the generic authentication architecture first, i.e., the authentication by the BSF in the generic authentication architecture instead of MBMS server. The Multicast/Broadcast Server (BM-SC) in the MBMS is equivalent to the NAF in the generic authentication architecture. After its authentication, the BSF has shared the Ks with the user, and assigns a B-TID to the users, then the user can use this B-TID for sending service request. The BM-SC queries the BSF after it receives the request with the user's B-TID in it. The BSF returns the Ks or the Ks-derived key after it finds the user information, thus the BM-SC and the user have the shared key Ks or Ks-derived key, which is the Multicast User Key (MUK) in the MBMS that used to protect the point-to-multipoint group shared key the MSK between the BM-SC and the users. That is to say, at the moment, the user and the BM-SC have established a security association between them, i.e., the user believes that the server he has connected to is a real and legal server instead of a counterfeit server with other equipment; and simultaneously, the server also believes that the service-request user is a legal user instead of an attacker. The basis for the security association is that they have the same shared key. In the subsequence communication, they use the MUK to identify their respective counterparty.
The applying mode based on the generic authentication architecture is only used in the user's home network. That is to say, the existing techniques only take into account the cases of using the generic authentication architecture in the user's home network, instead of the issue how to use the generic authentication architecture in the user's home network when a roaming user uses services of a visited network.
In practical applications, a roaming user who has passed authentication with the generic authentication architecture generally needs some services of the visited network, for instance, the roaming user might need some information like the local news, weather and traffic. Since the existing techniques have not taken into account the issue how to use the generic authentication architecture of the home network in the visited network, the roaming user is unable to establish security association with the application server in the visited network with the help of the generic authentication architecture, thus the roaming user is unable to use the services of the visited network although he has passed authentication by the generic authentication architecture.